Mutant Operators for Testing Concurrent Java Programs
نویسندگان
چکیده
Mutation testing is a fault-based testing technique that has been widely studied in the last decades. One reason for the interest of the scientific community in mutation testing is its flexibility. It can be applied to programs at unit and integration testing levels, as well as to software specifications written in a variety of different languages. A fundamental issue to make mutation testing work for a given language or environment is the set of mutant operators used to create the mutants. In this paper a set o mutant operator is proposed for the Java programming language, and more specifically, aiming at exercising aspects of concurrency and synchronization of that language.
منابع مشابه
Mutation Operators for Concurrent Java (J2SE 5.0)1
The current version of Java (J2SE 5.0) provides a high level of support for concurreny in comparison to previous versions. For example, programmers using J2SE 5.0 can now achieve synchronization between concurrent threads using explicit locks, semaphores, barriers, latches, or exchangers. Furthermore, built-in concurrent data structures such as hash maps and queues, built-in thread pools, and a...
متن کاملDesign of a Toolset for Dynamic Analysis of Concurrent Java Program
The Java language supports the use of monitors, sockets, and remote method invocation for concurrent programming. Also, Java classes can be defined to simulate other types of concurrent constructs. However, concurrent Java programs, like other concurrent programs, are difficult to specify, design, code, test and debug. In this paper, we describe the design of a toolset, called JaDA (Java Dynami...
متن کاملCUTE and jCUTE : Concolic Unit Testing and Explicit Path Model-Checking Tools (Tools Paper)
CUTE, a Concolic Unit Testing Engine for C and Java, is a tool to systematically and automatically test sequential C programs (including pointers) and concurrent Java programs. CUTE combines concrete and symbolic execution in a way that avoids redundant test cases as well as false warnings. The tool also introduces a race-flipping technique to efficiently test and model check concurrent program...
متن کاملCUTE and jCUTE : Concolic Unit Testing and Explicit Path Model - Checking
CUTE, a Concolic Unit Testing Engine for C and Java, is a tool to systematically and automatically test sequential C programs (including pointers) and concurrent Java programs. CUTE combines concrete and symbolic execution in a way that avoids redundant test cases as well as false warnings. The tool also introduces a race-flipping technique to efficiently test and model check concurrent program...
متن کاملFault Insertion in Concurrent Object-Oriented Programs for Mutation Analysis and Testability Measurement
Testability measurement and mutation analysis approaches require programs to be seeded with faults that represent plausible programmer errors. Software testability [5] is defined as the likelihood of a program failing on the next test input from a predefined input distribution, given that there is a fault in the program. Mutation analysis [2] requires the insertion of faults into a program with...
متن کامل